package com.ruoyi.prt.service;

import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.domain.vo.WebSocketVO;

import java.math.BigDecimal;

/**
 *
 * 打印接口
 *
 * @author huangziliang
 * @version 1.0
 * @date 2021/4/12 0:28
 */
public interface IPrtPrintService {

    /**
     * 校验是否可以进行打印
     * @param params 打印参数
     * @return 结果 成功返回实际支付价格
     */
    AjaxResult checkCanPrint(WebSocketVO params);

    /**
     * 拼接打印参数
     * @param params 打印参数对象
     * @return 拼接后的打印参数
     */
    String splitPrintPrams(WebSocketVO params);

    /**
     * 扣费
     * @param sysUser 用户编号
     * @param webSocketVO 打印参数
     * @return 结果
     */
    public AjaxResult deductionBalance(SysUser sysUser, WebSocketVO webSocketVO);

    /**
     * 计算实际支付的价格
     * @param params 参数
     * @return 结果
     */
    AjaxResult calcPrice(WebSocketVO params);
}
